﻿using System.Collections.Generic;
using System;

namespace Rpm.Header
{
    enum RpmTag
    {
        UNKNOWN1 = 63,
        DESCRIPTIONLANGS = 100,
        UNKNOWN2 = 620,
        NAME = 1000,
        VERSION = 1001,
        RELEASE = 1002,
        EPOCH = 1003,
        SUMMARY = 1004,
        DESCRIPTION = 1005,
        BUILDTIME = 1006,
        BUILDHOST = 1007,
        INSTALLTIME = 1008,
        SIZE = 1009,
        DISTRIBUTION = 1010,
        VENDOR = 1011,
        GIF = 1012,
        XPM = 1013,
        LICENSE = 1014,
        PACKAGER = 1015,
        GROUP = 1016,
        CHANGELOG = 1017,
        SOURCE = 1018,
        PATCH = 1019,
        URL = 1020,
        OS = 1021,
        ARCH = 1022,
        PREIN = 1023,
        POSTIN = 1024,
        PREUN = 1025,
        POSTUN = 1026,
        FILENAMES = 1027,
        FILESIZES = 1028,
        FILESTATES = 1029,
        FILEMODES = 1030,
        FILERDEVS = 1033,
        FILEMTIMES = 1034,
        FILEMD5S = 1035,
        FILELINKTOS = 1036,
        FILEFLAGS = 1037,
        ROOT = 1038,
        FILEUSERNAME = 1039,
        FILEGROUPNAME = 1040,
        EXCLUDE = 1041,
        EXCLUSIVE = 1042,
        ICON = 1043,
        SOURCERPM = 1044,
        FILEVERIFYFLAGS = 1045,
        ARCHIVESIZE = 1046,
        PROVIDENAME = 1047,
        REQUIREFLAGS = 1048,
        REQUIRENAME = 1049,
        REQUIREVERSION = 1050,
        NOSOURCE = 1051,
        NOPATCH = 1052,
        CONFLICTFLAGS = 1053,
        CONFLICTNAME = 1054,
        CONFLICTVERSION = 1055,
        DEFAULTPREFIX = 1056,
        BUILDROOT = 1057,
        INSTALLPREFIX = 1058,
        EXCLUDEARCH = 1059,
        EXCLUDEOS = 1060,
        EXCLUSIVEARCH = 1061,
        EXCLUSIVEOS = 1062,
        AUTOREQPROV = 1063,
        RPMVERSION = 1064,
        TRIGGERSCRIPTS = 1065,
        TRIGGERNAME = 1066,
        TRIGGERVERSION = 1067,
        TRIGGERFLAGS = 1068,
        TRIGGERINDEX = 1069,
        VERIFYSCRIPT = 1079,
        CHANGELOGTIME = 1080,
        CHANGELOGNAME = 1081,
        CHANGELOGTEXT = 1082,
        BROKENMD5 = 1083,
        PREREQ = 1084,
        PREINPROG = 1085,
        POSTINPROG = 1086,
        PREUNPROG = 1087,
        POSTUNPROG = 1088,
        BUILDARCHS = 1089,
        OBSOLETENAME = 1090,
        VERIFYSCRIPTPROG = 1091,
        TRIGGERSCRIPTPROG = 1092,
        DOCDIR = 1093,
        COOKIE = 1094,
        FILEDEVICES = 1095,
        FILEINODES = 1096,
        FILELANGS = 1097,
        PREFIXES = 1098,
        INSTPREFIXES = 1099,
        TRIGGERIN = 1100,
        TRIGGERUN = 1101,
        TRIGGERPOSTUN = 1102,
        AUTOREQ = 1103,
        AUTOPROV = 1104,
        RPMTAG_CAPABILTIY = 1105,
        SOURCEPACKAGE = 1106,
        OLDORIGFILENAMES = 1107,
        BUILDPREREQ = 1108,
        BUILDREQUIRES = 1109,
        BUILDCONFLICTS = 1110,
        BUILDMACROS = 1111,
        PROVIDEFLAGS = 1112,
        PROVIDEVERSION = 1113,
        OBSOLETEFLAGS = 1114,
        OBSOLETEVERSION = 1115,
        DIRINDEXES = 1116,
        BASENAMES = 1117,
        DIRNAMES = 1118,
        ORIGDIRINDEXES = 1119,
        ORIGBASENAMES = 1120,
        ORIGDIRNAMES = 1121,
        OPTFLAGS = 1122,
        DISTURL = 1123,
        PAYLOADFORMAT = 1124,
        PAYLOADCOMPRESSOR = 1125,
        PAYLOADFLAGS = 1126,
        MULTILIBS = 1127,
        INSTALLTID = 1128,
        REMOVETID = 1129,
        SHA1RHN = 1130,
        RHNPLATFORM = 1131,
        PLATFORM = 1132,
        PATCHESNAME = 1133,
        PATCHESFLAGS = 1134,
        PATCHESVERSION = 1135,
        CACHECTIME = 1136,
        CACHEPKGPATH = 1137,
        CACHEPKGSIZE = 1138,
        CACHEPKGMTIME = 1139,
        FILECOLORS = 1140,
        FILECLASS = 1141,
        CLASSDICT = 1142,
        FILEDEPENDSX = 1143,
        FILEDEPENDSN = 1144,
        DEPENDSDICT = 1145,
        SOURCEPKGID = 1146,
        FILECONTEXTS = 1147,
        FSCONTEXTS = 1148,
        RECONTEXTS = 1149,
        POLICIES = 1150,
        PRETRANS = 1151,
        POSTTRANS = 1152,
        PRETRANSPROG = 1153,
        POSTTRANSPROG = 1154,
        DISTTAG = 1155,
        SUGGESTSNAME = 1156,
        SUGGESTSVERSION = 1157,
        SUGGESTSFLAGS = 1158,
        ENHANCESNAME = 1159,
        ENHANCESVERSION = 1160,
        ENHANCESFLAGS = 1161,
        PRIORITY = 1162,
        CVSID = 1163,
        BLINKPKGID = 1164,
        BLINKHDRID = 1165,
        BLINKNEVRA = 1166,
        FLINKPKGID = 1167,
        FLINKHDRID = 1168,
        FLINKNEVRA = 1169,
        PACKAGEORIGIN = 1170,
        TRIGGERPREIN = 1171,
        BUILDSUGGESTS = 1172,
        BUILDENHANCES = 1173,
        SCRIPTSTATES = 1174,
        SCRIPTMETRICS = 1175,
        BUILDCPUCLOCK = 1176,
        FILEDIGESTALGOS = 1177,
        VARIANTS = 1178,
        XMAJOR = 1179,
        XMINOR = 1180,
        REPOTAG = 1181,
        KEYWORDS = 1182,
        BUILDPLATFORMS = 1183,
        PACKAGECOLOR = 1184,
        PACKAGEPREFCOLOR = 1185,
        XATTRSDICT = 1186,
        FILEXATTRSX = 1187,
        DEPATTRSDICT = 1188,
        CONFLICTATTRSX = 1189,
        OBSOLETEATTRSX = 1190,
        PROVIDEATTRSX = 1191,
        REQUIREATTRSX = 1192,
        BUILDPROVIDES = 1193,
        BUILDOBSOLETES = 1194,
        DBINSTANCE = 1195,
        NVRA = 1196,
        FILEPATHS = 1197,
        ORIGPATHS = 1198,
        RPMLIBVERSION = 1199,
        RPMLIBTIMESTAMP = 1200,
        RPMLIBVENDOR = 1201,
        CLASS = 1202,
        TRACK = 1203,
        TRACKPROG = 1204,
        SANITYCHECK = 1205,
        SANITYCHECKPROG = 1206,
        SHA1HEADER1 = 2650,
        UNKNOWN3 = 2670,
        SHA1HEADER = 2690,
        SIGSIZE = 10000,
        SIGMD5_1 = 10010,
        SIGPGP = 10030,
        SIGMD5 = 10040,
        SIGGPG = 10050,
        UNKNOWN4 = 10070,
    }

    enum RpmTagType
    {
        NULL,
        CHAR,
        INT8,
        INT16,
        INT32,
        INT64,
        STRING,
        BIN,
        STRING_ARRAY,
        I18NSTRING
    }
}